﻿namespace Grow.Module
{
    /// <summary>
    /// 模块构建对象
    /// </summary>
    public interface IModuleBuilder
    {
        /// <summary>
        /// 加载的模块集合
        /// </summary>
        IEnumerable<IModule> GetModules();

        /// <summary>
        /// 添加指定模块
        /// </summary>
        /// <typeparam name="TModule">要添加的模块类型</typeparam>
        IModuleBuilder AddModule<TModule>() where TModule : IModule, new();
    }
}
